package com.huike.business.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.huike.common.annotation.Excel;
import com.huike.common.core.domain.BaseEntity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 结核病业务记录
 * 商机跟进记录对象 tb_business_track_record
 *
 * @author zhouao
 * @date 2021-04-28
 */
public class TbBusinessTrackRecord extends BaseEntity
{
    /**
     * 串行版本uid
     */
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    private Long id;

    /**
     * 业务标识
     */
    @Excel(name = "线索id")
    private Long businessId;

    /**
     * 关键项目
     */
    @Excel(name = "沟通重点")
    private String keyItems;

    /**
     * 键
     */
    private List<String> keys =new ArrayList<>();

    /**
     * 记录
     */
    @Excel(name = "沟通纪要")
    private String record;

    /**
     * 跟踪状态
     */
    @Excel(name = "跟进状态")
    private String trackStatus;

    /**
     * 下次
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    private Date nextTime;


    /**
     * 下次把
     *
     * @return {@link Date}
     */
    public Date getNextTime() {
        return nextTime;
    }

    /**
     * 下次组
     *
     * @param nextTime 下次
     */
    public void setNextTime(Date nextTime) {
        this.nextTime = nextTime;
    }

    /**
     * 得到钥匙
     *
     * @return {@link List}<{@link String}>
     */
    public List<String> getKeys() {
        return keys;
    }

    /**
     * 设置键
     *
     * @param keys 键
     */
    public void setKeys(List<String> keys) {
        this.keys = keys;
    }

    /**
     * 组id
     *
     * @param id id
     */
    public void setId(Long id)
    {
        this.id = id;
    }

    /**
     * 得到id
     *
     * @return {@link Long}
     */
    public Long getId()
    {
        return id;
    }

    /**
     * 获得商业标识
     *
     * @return {@link Long}
     */
    public Long getBusinessId() {
        return businessId;
    }

    /**
     * 设置业务id
     *
     * @param businessId 业务标识
     */
    public void setBusinessId(Long businessId) {
        this.businessId = businessId;
    }

    /**
     * 设置关键项目
     *
     * @param keyItems 关键项目
     */
    public void setKeyItems(String keyItems)
    {
        this.keyItems = keyItems;
    }

    /**
     * 得到关键项目
     *
     * @return {@link String}
     */
    public String getKeyItems()
    {
        return keyItems;
    }

    /**
     * 设置记录
     *
     * @param record 记录
     */
    public void setRecord(String record)
    {
        this.record = record;
    }

    /**
     * 得到记录
     *
     * @return {@link String}
     */
    public String getRecord()
    {
        return record;
    }

    /**
     * 设置跟踪状态
     *
     * @param trackStatus 跟踪状态
     */
    public void setTrackStatus(String trackStatus)
    {
        this.trackStatus = trackStatus;
    }

    /**
     * 得到跟踪状态
     *
     * @return {@link String}
     */
    public String getTrackStatus()
    {
        return trackStatus;
    }

    /**
     * 字符串
     *
     * @return {@link String}
     */
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("businessId", getBusinessId())
            .append("createBy", getCreateBy())
            .append("keyItems", getKeyItems())
            .append("record", getRecord())
            .append("createTime", getCreateTime())
            .append("trackStatus", getTrackStatus())
            .toString();
    }
}
